// @Software: serve
// @File : IOJSON
// @Author : vince
// @Time : 2021/9/23 19:17
// @Description  请填写文件描述
package util

import (
	"gintify/core"
	"github.com/json-iterator/go"
	"os"
)

var json = jsoniter.ConfigCompatibleWithStandardLibrary

func ReadJSON(filename string, data interface{}) {
	filePtr, err := os.Open(filename)
	if err != nil {
		core.LG.Debug("文件打开失败 [Err:%s]", err.Error())
		return
	}
	defer filePtr.Close()
	// 创建json解码器
	decoder := json.NewDecoder(filePtr)
	err = decoder.Decode(&data)
	if err != nil {
		core.LG.Debug("解码失败", err.Error())
	} else {
		core.LG.Debug("解码成功")
		//core.LG.Debug()(info)
	}
}

func WriteJSON(filename string, data interface{}) {
	// 创建文件
	filePtr, err := os.Create(filename)
	if err != nil {
		core.LG.Debug("文件创建失败", err.Error())
		return
	}
	defer filePtr.Close()
	// 创建Json编码器
	encoder := json.NewEncoder(filePtr)
	err = encoder.Encode(data)
	if err != nil {
		core.LG.Debug("编码错误", err.Error())
	} else {
		core.LG.Debug("编码成功")
	}
}